/*
 *  Copyright (c) 2023 Fraunhofer Institute for Software and Systems Engineering
 *
 *  This program and the accompanying materials are made available under the
 *  terms of the Apache License, Version 2.0 which is available at
 *  https://www.apache.org/licenses/LICENSE-2.0
 *
 *  SPDX-License-Identifier: Apache-2.0
 *
 *  Contributors:
 *       Fraunhofer Institute for Software and Systems Engineering - initial API and implementation
 *
 */

package org.eclipse.edc.protocol.dsp.spi.type;

import static org.eclipse.edc.jsonld.spi.Namespaces.DSPACE_SCHEMA;

public interface DspNegotiationPropertyAndTypeNames {

    // types

    String DSPACE_TYPE_CONTRACT_NEGOTIATION_TERM = "ContractNegotiation";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_NEGOTIATION_TERM;
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_ERROR_TERM = "ContractNegotiationError";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_ERROR_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_NEGOTIATION_ERROR_TERM;
    // messages
    String DSPACE_TYPE_CONTRACT_REQUEST_MESSAGE_TERM = "ContractRequestMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_REQUEST_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_REQUEST_MESSAGE_TERM;
    String DSPACE_TYPE_CONTRACT_OFFER_MESSAGE_TERM = "ContractOfferMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_OFFER_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_OFFER_MESSAGE_TERM;
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_EVENT_MESSAGE_TERM = "ContractNegotiationEventMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_EVENT_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_NEGOTIATION_EVENT_MESSAGE_TERM;
    String DSPACE_TYPE_CONTRACT_AGREEMENT_MESSAGE_TERM = "ContractAgreementMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_AGREEMENT_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_AGREEMENT_MESSAGE_TERM;
    String DSPACE_TYPE_CONTRACT_AGREEMENT_VERIFICATION_MESSAGE_TERM = "ContractAgreementVerificationMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_AGREEMENT_VERIFICATION_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_AGREEMENT_VERIFICATION_MESSAGE_TERM;
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_TERMINATION_MESSAGE_TERM = "ContractNegotiationTerminationMessage";
    @Deprecated(since = "0.14.0")
    String DSPACE_TYPE_CONTRACT_NEGOTIATION_TERMINATION_MESSAGE_IRI = DSPACE_SCHEMA + DSPACE_TYPE_CONTRACT_NEGOTIATION_TERMINATION_MESSAGE_TERM;

    // properties
    String DSPACE_PROPERTY_EVENT_TYPE_TERM = "eventType";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_EVENT_TYPE_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_EVENT_TYPE_TERM;
    String DSPACE_PROPERTY_AGREEMENT_TERM = "agreement";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_AGREEMENT_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_AGREEMENT_TERM;
    String DSPACE_PROPERTY_OFFER_TERM = "offer";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_OFFER_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_OFFER_TERM;
    String DSPACE_PROPERTY_TIMESTAMP_TERM = "timestamp";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_TIMESTAMP_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_TIMESTAMP_TERM;
    String DSPACE_PROPERTY_CONSUMER_ID_TERM = "consumerId";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_CONSUMER_ID_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_CONSUMER_ID_TERM;
    String DSPACE_PROPERTY_PROVIDER_ID_TERM = "providerId";
    @Deprecated(since = "0.14.0")
    String DSPACE_PROPERTY_PROVIDER_ID_IRI = DSPACE_SCHEMA + DSPACE_PROPERTY_PROVIDER_ID_TERM;
    // event types
    String DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_ACCEPTED_TERM = "ACCEPTED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_ACCEPTED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_ACCEPTED_TERM;
    String DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_FINALIZED_TERM = "FINALIZED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_FINALIZED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_EVENT_TYPE_FINALIZED_TERM;
    // negotiation states

    String DSPACE_VALUE_NEGOTIATION_STATE_REQUESTED_TERM = "REQUESTED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_REQUESTED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_REQUESTED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_OFFERED_TERM = "OFFERED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_OFFERED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_OFFERED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_ACCEPTED_TERM = "ACCEPTED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_ACCEPTED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_ACCEPTED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_AGREED_TERM = "AGREED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_AGREED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_AGREED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_VERIFIED_TERM = "VERIFIED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_VERIFIED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_VERIFIED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_FINALIZED_TERM = "FINALIZED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_FINALIZED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_FINALIZED_TERM;
    String DSPACE_VALUE_NEGOTIATION_STATE_TERMINATED_TERM = "TERMINATED";
    @Deprecated(since = "0.14.0")
    String DSPACE_VALUE_NEGOTIATION_STATE_TERMINATED_IRI = DSPACE_SCHEMA + DSPACE_VALUE_NEGOTIATION_STATE_TERMINATED_TERM;

}
